import json

# 读取 JSON 文件
def read_json_file(file_path):
    try:
        with open(file_path, 'r') as file:
            data = json.load(file)
        return data
    except FileNotFoundError:
        print(f"错误: 文件 {file_path} 未找到。")
        return None
    except json.JSONDecodeError:
        print(f"错误: 无法解析 {file_path} 中的 JSON 数据。")
        return None

# 处理 training 部分的 image 属性
def process_training_data(data):
    if 'training' in data:
        for item in data['training']:
            if 'image' in item and isinstance(item['image'], list) and len(item['image']) == 1:
                item['image'] = item['image'][0]
    return data

# 将处理后的数据写入新的 JSON 文件
def write_json_file(data, file_path):
    try:
        with open(file_path, 'w') as file:
            json.dump(data, file, indent=4)
        print(f"处理后的数据已保存到 {file_path}。")
    except Exception as e:
        print(f"错误: 写入文件 {file_path} 时出现问题: {e}")

if __name__ == "__main__":
    input_file = 'dataset027_ACDC.json'  # 输入的 JSON 文件
    output_file = 'output.json'  # 输出的 JSON 文件

    data = read_json_file(input_file)
    if data:
        processed_data = process_training_data(data)
        write_json_file(processed_data, output_file)    